package com.qf.driver.mqtt.handler;

import org.springframework.integration.annotation.MessagingGateway;
import org.springframework.integration.mqtt.support.MqttHeaders;
import org.springframework.messaging.handler.annotation.Header;

/**
 * 本接口用于发送指令给emqx服务器
 * @author 千锋健哥
 */
@MessagingGateway(defaultRequestChannel = "mqttOutputChannel")
public interface MqttSendCmdHandler {

    /**
     * 自定义发送指令给emqx服务器接口
     * @param topic   主题名称
     * @param data    指令数据, 必须是json格式字符串
     */
    public void sendToMqtt(@Header(MqttHeaders.TOPIC) String topic,
                           String data);

    /**
     * 自定义发送指令给emqx服务器接口
     * @param topic   主题名称
     * @param Qos     Qos级别
     * @param data    指令数据, 必须是json格式字符串
     */
    public void sendToMqtt(@Header(MqttHeaders.TOPIC) String topic,
                           @Header(MqttHeaders.QOS) Integer Qos,
                           String data);
}
